草庐IT

C++ STL 问题 : allocators

全部标签

c# - 任何特定于 C# 的编码安全问题?

在C++世界中,有多种方法可以制造可利用的漏洞:缓冲区溢出、不安全的sting处理、各种算术技巧、printf问题、不以'\0'结尾的字符串等等。尽管这些问题大部分都在java中解决了,但还是有一些事情要谈。但是是否有任何典型的特定于C#的编码漏洞的列表?(与.NET平台本身无关) 最佳答案 以下是您可能会遇到的一些问题:如果您有任何类型的语言解释器(HTML、JavaScript和SQL是三大语言),那么您仍然可能存在注入(inject)或XSS漏洞。P/Invoke可能会导致问题,尤其是在您进行任何自定义编码时。即使您通过P/I

c# - 找不到静态图像的 Controller 路径? asp.net mvc 路由问题?

我有一个图像文件夹存储在~/Content/Images/我正在通过加载这些图片最近,图像没有加载,我的错误日志中出现以下错误。奇怪的是,有些图像可以正常加载,而另一些则无法加载。有人知道我的路线有什么问题吗?我是否缺少/Content/文件夹的忽略路由?对于favicon.ico和一堆其他图像文件,我也遇到了同样的错误...--3/25/20102:32:38AM--System.Web.HttpException:Thecontrollerforpath'/Content/Images/box_bottom.png'couldnotbefoundoritdoesnotimpleme

c# - Winforms绑定(bind)问题

我对以win形式绑定(bind)比较陌生。为了学习这个主题,我设置了以下测试应用程序。带有ListBox和Button的基本winform。publicpartialclassForm1:Form{publicListstringList=newList();publicForm1(){InitializeComponent();stringList.Add("First");listBox1.DataSource=stringList;}privatevoidbutton1_Click(objectsender,EventArgse){stringList.Add("Second")

c# - 关于 C# 4.0 泛型协变的问题

定义了这个接口(interface):publicinterfaceIInputBoxService{boolShowDialog();TResult{get;}}为什么下面的代码有效:publicclassStringInputBoxService:IInputBoxService{...}...IInputBoxServiceservice=newStringInputBoxService();这不是吗?publicclassIntegerInputBoxService:IInputBoxService{...}...IInputBoxServiceservice=newInteg

c# - 处理数据库连接问题的正确方法

我在尝试连接数据库时遇到以下错误:Anetwork-relatedorinstance-specificerroroccurredwhileestablishingaconnectiontoSQLServer.Theserverwasnotfoundorwasnotaccessible.VerifythattheinstancenameiscorrectandthatSQLServerisconfiguredtoallowremoteconnections.(provider:NamedPipesProvider,error:40-CouldnotopenaconnectiontoSQ

c# - ElementHost 内的 WPF 控件呈现问题

我有一个WinForms控件,里面有一个TableLayoutPanel,它包含多个ElementHosts,每个ElementHost都包含一个WPF控件。一切正常,除非控件的大小大于窗口并且ScrollBar在那里;当我向下滚动时,控件会变得扭曲,就像这样-最大化窗口或调整窗口大小时,控件会正确呈现(减小尺寸使控件超出可见区域,然后再次增大尺寸使它们回到可见区域)这不会发生在同一个窗口中的WinForms控件中,只有WPF控件;知道为什么会这样吗?有什么解决方案吗? 最佳答案 this.Loaded+=delegate{vars

c# - 从 int 转换为 float 的问题

有一个我无法理解的奇怪行为。同意float是近似值,因此即使显然返回没有小数的数字的操作也可以近似为带小数的数字。我这样做:intnum=(int)(195.95F*100);因为这是一个浮点运算,所以我得到19594而不是19595..但这是正确的。让我困惑的是,如果我这样做floatflo=195.95F*100;intnum=(int)flo;我得到了19595的正确结果。知道为什么会这样吗? 最佳答案 我想看看这是不是编译器在做数学运算,但即使你强制它,它的行为也是这样的:staticvoidMain(){inti=(int

c# - C# 中的 String.Join 性能问题

我一直在研究向我提出的一个问题:如何编写一个将字符串作为输入并返回字符之间有空格的字符串的函数。该函数将被编写为在每秒调用数千次时优化性能。我知道.net有一个名为String.Join的函数,我可以将空格字符作为分隔符与原始字符串一起传递给该函数。除非使用String.Join,否则我可以使用StringBuilder类在每个字符后附加空格。完成此任务的另一种方法是声明一个包含2*n-1个字符的字符数组(您必须为空格添加n-1个字符)。可以在一个循环中填充字符数组,然后传递给String构造函数。我编写了一些.net代码,这些代码使用参数"Hello,World"运行这些算法中的每一

c# - `fixed` 与 GCHandle.Alloc(obj,GCHandleType.Pinned)

我试图找出用fixed关键字定义的固定指针是如何工作的。我的想法是在内部GCHandle.Alloc(object,GCHandleType.Pinned)用于此目的。但是当我查看为以下C#代码生成的IL时:unsafestaticvoidf1(){vararr=newMyObject[10];fixed(MyObject*aptr=&arr[0]){Console.WriteLine(*aptr);}}我找不到任何GCHandle的踪迹。我看到该方法中使用固定指针的唯一提示是以下IL声明:.localsinit([0]valuetypeTestPointerPinning.MyObj

c# - WPF 用户控件中的 "DataContext = this"有什么问题?

我在某处读到,在用户控件的构造函数中设置DataContext=this是不好的做法(虽然找不到位置)。为什么这是不好的做法?有什么选择? 最佳答案 一般来说,当有人使用您的控件时,他们会希望将它的数据上下文设置为他们自己的View模型类,并将您控件上的属性绑定(bind)到他们的View模型。如果您开始在控件内部乱用数据上下文,并依赖于将其设置为“this”,您将阻止它们的绑定(bind)工作,或者您的控件将无法按预期工作,因为您依赖它没有被改变。假设您有一个用户控件,上面有一堆子控件。您可以做的是将子控件上的DataContex